package com.gitee.cnlongdb.server.threads.init;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.gitee.cnlongdb.basic.constant.ConcurrentDataMap;
import com.gitee.cnlongdb.basic.constant.LongDbConstant;
import com.gitee.cnlongdb.server.connect.LongDbConnect;

/**
 * 系统名称：InsertHandlerThread.java
 * 模块名称：
 * 模块描述：开启【批量插入数据的】监听
 * 功能列表：
 * 模块作者：ZOUYONG
 * 开发时间：2018年12月5日 下午10:05:12
 * 模块路径：com.gitee.cnlongdb.server.threads.init.InsertHandlerThread
 * 更新记录：
 */
public class InsertHandlerThread extends Thread {

	private final Logger logger = (Logger) LoggerFactory.getLogger(InsertHandlerThread.class);

	private LongDbConnect connect;
	public InsertHandlerThread(LongDbConnect connect) {
		logger.debug(LongDbConstant.longdbDefaultName + "初始化[插入数据监听]...");
		this.connect = connect;
	}
	
	@Override
	public void run() {
		try {
			Integer result = 0;
			if(ConcurrentDataMap.insertDataMap.size() > 0) {
				result = connect.getInsertOperator().batchInsertDataWriteTable(ConcurrentDataMap.insertDataMap);
			}
			logger.debug("此次处理新增数据数量：[" + result + "]条！");
		} catch(Exception e) {
			logger.error("开启【批量插入数据的】监听异常啦：" + e.getMessage(), e);
		}
	}
	
}
